core: Use OSTREE_SHA256_STRING_LEN instead of 64
authorMathnerd314 <mathnerd314.gph+hs@gmail.com>
Sat, 18 Jun 2016 16:31:19 +0000 (10:31 -0600)
committerAtomic Bot <atomic-devel@projectatomic.io>
Wed, 22 Jun 2016 16:10:01 +0000 (16:10 +0000)
Closes: #359
Approved by: cgwalters

14 files changed:
src/libostree/ostree-core.c
src/libostree/ostree-core.h
src/libostree/ostree-repo-checkout.c
src/libostree/ostree-repo-commit.c
src/libostree/ostree-repo-file.c
src/libostree/ostree-repo-private.h
src/libostree/ostree-repo-pull.c
src/libostree/ostree-repo-refs.c
src/libostree/ostree-repo-static-delta-core.c
src/libostree/ostree-repo-static-delta-processing.c
src/libostree/ostree-repo-traverse.c
src/libostree/ostree-repo.c
src/libostree/ostree-repo.h
src/ostree/ot-dump.c

index 1a3740f8f711b084f469f0a59213b6f1aa5be2cc..4e3816f5197a4d73e85fa35c8f4efff4d05ef859 100644 (file)
@@ -1269,7 +1269,7 @@ ostree_checksum_to_bytes_v (const char *checksum)
 /**
  * ostree_checksum_inplace_from_bytes: (skip)
  * @csum: (array fixed-size=32): An binary checksum of length 32
- * @buf: Output location, must be at least 65 bytes in length
+ * @buf: Output location, must be at least OSTREE_SHA256_STRING_LEN+1 bytes in length
  *
  * Overwrite the contents of @buf with stringified version of @csum.
  */
@@ -1340,7 +1340,7 @@ ostree_checksum_b64_inplace_from_bytes (const guchar *csum,
 char *
 ostree_checksum_from_bytes (const guchar *csum)
 {
-  char *ret = g_malloc (65);
+  char *ret = g_malloc (OSTREE_SHA256_STRING_LEN+1);
   ostree_checksum_inplace_from_bytes (csum, ret);
   return ret;
 }
@@ -1484,7 +1484,7 @@ _ostree_get_relative_object_path (const char         *checksum,
 {
   GString *path;
 
-  g_assert (strlen (checksum) == 64);
+  g_assert (strlen (checksum) == OSTREE_SHA256_STRING_LEN);
 
   path = g_string_new ("objects/");
 
@@ -1759,7 +1759,7 @@ ostree_validate_structureof_checksum_string (const char *checksum,
   int i = 0;
   size_t len = strlen (checksum);
 
-  if (len != 64)
+  if (len != OSTREE_SHA256_STRING_LEN)
     {
       g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
                    "Invalid rev '%s'", checksum);
index 4a0e60e9ac90b7988685d7eed0f402594b8fe662..b86756723e385ebdb1bb591f38803c21fdc4a313 100644 (file)
@@ -51,8 +51,20 @@ G_BEGIN_DECLS
  */
 #define OSTREE_MAX_RECURSION (256)
 
+/**
+ * OSTREE_SHA256_DIGEST_LEN:
+ *
+ * Length of a sha256 digest when expressed as raw bytes
+ */
 #define OSTREE_SHA256_DIGEST_LEN (32)
 
+/**
+ * OSTREE_SHA256_STRING_LEN:
+ *
+ * Length of a sha256 digest when expressed as a hexadecimal string
+ */
+#define OSTREE_SHA256_STRING_LEN (64)
+
 /**
  * OstreeObjectType:
  * @OSTREE_OBJECT_TYPE_FILE: Content; regular file, symbolic link
index 59c8517ad5208215b231f4362b5166efe537dd99..a6d69c42f29d282227392978ecd8d6f590ea55f9 100644 (file)
@@ -480,7 +480,7 @@ checkout_one_file_at (OstreeRepo                        *repo,
                   key = g_new (OstreeDevIno, 1);
                   key->dev = stbuf.st_dev;
                   key->ino = stbuf.st_ino;
-                  memcpy (key->checksum, checksum, 65);
+                  memcpy (key->checksum, checksum, OSTREE_SHA256_STRING_LEN+1);
                   
                   g_hash_table_add ((GHashTable*)options->devino_to_csum_cache, key);
                 }
index 0d45dd47c5065fbcc705ef152603f015b3aafe15..3670dea7074684af585cfb9a63277587f19a4ae8 100644 (file)
@@ -2937,7 +2937,7 @@ ostree_repo_write_mtree (OstreeRepo           *self,
       g_autoptr(GHashTable) dir_contents_checksums = NULL;
       g_autoptr(GVariant) serialized_tree = NULL;
       g_autofree guchar *contents_csum = NULL;
-      char contents_checksum_buf[65];
+      char contents_checksum_buf[OSTREE_SHA256_STRING_LEN+1];
 
       dir_contents_checksums = g_hash_table_new_full (g_str_hash, g_str_equal,
                                                       (GDestroyNotify)g_free, (GDestroyNotify)g_free);
index 396820da9dc8014cf21bc8364bf5fc0acbe71768..a88e53639728a2ca315d36c3f38791580a7121dd 100644 (file)
@@ -113,9 +113,9 @@ _ostree_repo_file_new_root (OstreeRepo *repo,
 
   g_return_val_if_fail (repo != NULL, NULL);
   g_return_val_if_fail (contents_checksum != NULL, NULL);
-  g_return_val_if_fail (strlen (contents_checksum) == 64, NULL);
+  g_return_val_if_fail (strlen (contents_checksum) == OSTREE_SHA256_STRING_LEN, NULL);
   g_return_val_if_fail (metadata_checksum != NULL, NULL);
-  g_return_val_if_fail (strlen (metadata_checksum) == 64, NULL);
+  g_return_val_if_fail (strlen (metadata_checksum) == OSTREE_SHA256_STRING_LEN, NULL);
 
   self = g_object_new (OSTREE_TYPE_REPO_FILE, NULL);
   self->repo = g_object_ref (repo);
@@ -152,12 +152,12 @@ _ostree_repo_file_new_for_commit (OstreeRepo  *repo,
   g_autoptr(GVariant) commit_v = NULL;
   g_autoptr(GVariant) tree_contents_csum_v = NULL;
   g_autoptr(GVariant) tree_metadata_csum_v = NULL;
-  char tree_contents_csum[65];
-  char tree_metadata_csum[65];
+  char tree_contents_csum[OSTREE_SHA256_STRING_LEN + 1];
+  char tree_metadata_csum[OSTREE_SHA256_STRING_LEN + 1];
 
   g_return_val_if_fail (repo != NULL, NULL);
   g_return_val_if_fail (commit != NULL, NULL);
-  g_return_val_if_fail (strlen (commit) == 64, NULL);
+  g_return_val_if_fail (strlen (commit) == OSTREE_SHA256_STRING_LEN, NULL);
 
   if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT,
                                  commit, &commit_v, error))
@@ -807,7 +807,7 @@ ostree_repo_file_tree_query_child (OstreeRepoFile  *self,
   g_autoptr(GVariant) dirs_variant = NULL;
   g_autoptr(GVariant) content_csum_v = NULL;
   g_autoptr(GVariant) meta_csum_v = NULL;
-  char tmp_checksum[65];
+  char tmp_checksum[OSTREE_SHA256_STRING_LEN+1];
   GFileAttributeMatcher *matcher = NULL;
 
   if (!ostree_repo_file_ensure_resolved (self, error))
index f330d16927cd877962a07636942d802d0d3865f2..52dbfdd58664c8b97da6c358da3847e677fba5c9 100644 (file)
@@ -120,7 +120,7 @@ struct OstreeRepo {
 typedef struct {
   dev_t dev;
   ino_t ino;
-  char checksum[65];
+  char checksum[OSTREE_SHA256_STRING_LEN+1];
 } OstreeDevIno;
 
 #define OSTREE_REPO_TMPDIR_STAGING "staging-"
index 53847340cf227267aae8e31183132f80afda5d8e..672da831d7c39167e3548a0b3b59218061290b69 100644 (file)
@@ -1096,7 +1096,7 @@ scan_commit_object (OtPullData         *pull_data,
     }
   else if (parent_csum_bytes != NULL && depth > 0)
     {
-      char parent_checksum[65];
+      char parent_checksum[OSTREE_SHA256_STRING_LEN+1];
       gpointer parent_depthp;
       int parent_depth;
 
index d9af2256f554d660d9f7f30f62817a893e7e8ad6..1eb50e0c579bfff945ceb095e445b0770ece3a98 100644 (file)
@@ -341,10 +341,10 @@ ostree_repo_resolve_partial_checksum (OstreeRepo   *self,
 
   g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
 
-  /* If the input is longer than 64 chars or contains non-hex chars,
+  /* If the input is longer than OSTREE_SHA256_STRING_LEN chars or contains non-hex chars,
      don't bother looking for it as an object */
   off = strspn (refspec, hexchars);
-  if (off > 64 || refspec[off] != '\0')
+  if (off > OSTREE_SHA256_STRING_LEN || refspec[off] != '\0')
     return TRUE;
 
   /* this looks through all objects and adds them to the ref_list if:
@@ -740,7 +740,7 @@ ostree_repo_remote_list_refs (OstreeRepo       *self,
         {
           const char *ref_name = NULL;
           g_autoptr(GVariant) csum_v = NULL;
-          char tmp_checksum[65];
+          char tmp_checksum[OSTREE_SHA256_STRING_LEN+1];
 
           g_variant_get_child (child, 0, "&s", &ref_name);
 
index d4f8a57353b93f69ccc17bfe5271ad675cab2e3b..6253a45fc0d4983b262ba0e0264a03b04acf6e8b 100644 (file)
@@ -136,7 +136,7 @@ ostree_repo_list_static_delta_names (OstreeRepo                  *self,
                   {
                     g_autofree char *buf = g_strconcat (name1, name2, NULL);
                     GString *out = g_string_new ("");
-                    char checksum[65];
+                    char checksum[OSTREE_SHA256_STRING_LEN+1];
                     guchar csum[OSTREE_SHA256_DIGEST_LEN];
                     const char *dash = strchr (buf, '-');
 
@@ -187,7 +187,7 @@ _ostree_repo_static_delta_part_have_all_objects (OstreeRepo             *repo,
     {
       guint8 objtype = *checksums_data;
       const guint8 *csum = checksums_data + 1;
-      char tmp_checksum[65];
+      char tmp_checksum[OSTREE_SHA256_STRING_LEN+1];
 
       if (G_UNLIKELY(!ostree_validate_structureof_objtype (objtype, error)))
         goto out;
@@ -354,7 +354,7 @@ ostree_repo_static_delta_execute_offline (OstreeRepo                    *self,
       guint64 size;
       guint64 usize;
       const guchar *csum;
-      char checksum[65];
+      char checksum[OSTREE_SHA256_STRING_LEN+1];
       gboolean have_all;
       g_autoptr(GInputStream) part_in = NULL;
       g_autoptr(GBytes) delta_data = NULL;
index 681d426f4a7f53ae1fcd86be3b80c03f2b81e0d6..871ab7bd42e47dd401f135a66bb6ae722712aebf 100644 (file)
@@ -60,7 +60,7 @@ typedef struct {
   OstreeRepoContentBareCommit barecommitstate;
   guint64          content_size;
   GOutputStream   *content_out;
-  char             checksum[65];
+  char             checksum[OSTREE_SHA256_STRING_LEN+1];
   char             *read_source_object;
   int               read_source_fd;
   gboolean        have_obj;
@@ -78,7 +78,7 @@ typedef struct {
 
 typedef struct {
   StaticDeltaExecutionState *state;
-  char checksum[65];
+  char checksum[OSTREE_SHA256_STRING_LEN+1];
 } StaticDeltaContentWrite;
 
 typedef gboolean (*DispatchOpFunc) (OstreeRepo                 *repo,
index 503ab32972565908f2382b8c031030022337cb6f..4cc05e2e93d73f8c6a05129d640b75f7aa649aae 100644 (file)
@@ -34,8 +34,8 @@ struct _OstreeRepoRealCommitTraverseIter {
   const char *name;
   OstreeRepoCommitIterResult state;
   guint idx;
-  char checksum_content[65];
-  char checksum_meta[65];
+  char checksum_content[OSTREE_SHA256_STRING_LEN+1];
+  char checksum_meta[OSTREE_SHA256_STRING_LEN+1];
 };
 
 /**
index 843a648905c5b461489430b3d959b884d951863a..c6520a804c875e2fbe20c478a5e3e1bd8e317f1f 100644 (file)
@@ -2445,7 +2445,7 @@ list_loose_objects_at (OstreeRepo             *self,
       const char *name = dent->d_name;
       const char *dot;
       OstreeObjectType objtype;
-      char buf[65];
+      char buf[OSTREE_SHA256_STRING_LEN+1];
 
       if (strcmp (name, ".") == 0 ||
           strcmp (name, "..") == 0)
index ce280ee66f6e775e356ef269d5da3ee3a8d19ef4..c023b4d284a59544f746bd49e9dbbf79915bcde5 100644 (file)
@@ -866,7 +866,7 @@ gboolean ostree_repo_traverse_commit_union (OstreeRepo         *repo,
 struct _OstreeRepoCommitTraverseIter {
   gboolean initialized;
   gpointer dummy[10];
-  char dummy_checksum_data[65*2];
+  char dummy_checksum_data[(OSTREE_SHA256_STRING_LEN+1)*2];
 };
 
 typedef struct _OstreeRepoCommitTraverseIter OstreeRepoCommitTraverseIter;
index 48b087af9b2338dd22266303d14174485e006c36..4fc84cbd4806aa1de8cb46721b568f21dca08389 100644 (file)
@@ -181,7 +181,7 @@ dump_summary_ref (const char   *ref_name,
   csum_bytes = ostree_checksum_bytes_peek_validate (csum_v, &csum_error);
   if (csum_error == NULL)
     {
-      char csum[65];
+      char csum[OSTREE_SHA256_STRING_LEN+1];
 
       ostree_checksum_inplace_from_bytes (csum_bytes, csum);
       g_print ("      %s\n", csum);